﻿using System;

namespace InfoSite.Tools
{
	public class EnumHelper
	{
		#region Enums

        public enum ContentType
        {
            Gbu = 0,
            About = 1,
            Purchase = 2,
            Archive = 3,
            Tsnb = 4,
            Services = 5,
            Prices = 6,
            Products = 7,
            Contacts = 8,
            Bank = 9,
            Map = 10,
            Fer = 11,
            Ter = 12,
            Docs = 13,
            Partners = 14
        }

        public enum ListContentType
        {
            News = 51
        }

		public enum GeographicPoint
		{
			Countries,
			Regions,
			Cities
		}

		public enum PageSection
		{
			List = 0,
			Add = 1,
			Edit = 2,
			Import = 3
		}

		public enum ProfileSection
		{
			General = 0,
			ChangePassword = 1,
			AddLinks = 2
		}

		public enum AccountProcessingSection
		{
			Registration = 0,
			RemindPassword = 1,
			ActivateNewPassword = 2
		}

		public enum EmailTemplateType
		{
			Welcome = 0,
			Activate = 1,
			Lock = 2,
			Unlock = 3,
			Invitation = 4,
			RemindPassword = 5,
			RequestNewPassword = 6,
			Support = 7,
			Deactivate = 8,
			FreeEmail = 9
		}

		public enum RequiredRoles
		{
			Admin,
			UnconfirmedUser,
			User
		}

		public enum ProfileItemKey
		{
			Email,
			FirstName,
			MiddleName,
			LastName,
			BirthDate,
			ContactPhone,
			AdditionalPhone,
			Skype,
			JobCountry,
			JobRegion,
			JobCity,
			Job,
			JobPosition
		}

		public enum AdminProfileItemKey
		{
			Community,
			News,
			Congress,
			Conference,
			Nosology,
			Seminar,
			Journal,
			Lection,
			Guidline,
			Material,
			Research,
			Recomendation,
			ClinicCase,
			Career,
			Education,
			Grant,
			OtherResources,
			Questions
		}

		public enum ProfileAction
		{
			Nothing = -1,
			Lock = 0,
			Unlock = 1,
			Activate = 2,
			Deactivate = 3
		}

		#endregion

		#region Methods

		public static string GetTemplateTypeName(object oTemplateType)
		{
			return Enum.GetName(typeof(EmailTemplateType), oTemplateType);
		}

		public static string GetContentTypeName(object oContentTypeCode)
		{
			return Enum.GetName(typeof(ContentType), oContentTypeCode);
		}

		#endregion
	}
}